const app = getApp()

var transform = {
  "附录1": [
    "白",
    "灰",
    "黄",
    "粉",
    "红",
    "紫",
    "绿",
    "蓝",
    "棕",
    "黑"
  ],
  "附录2": [
    "非营运",
    "公路客运",
    "公交客运",
    "出租客运",
    "旅游客运",
    "货运",
    "租赁",
    "警用",
    "消防",
    "救护",
    "工程救险",
    "营转⾮",
    "出租转⾮",
    "教练",
    "幼⼉校车",
    "小学生校车",
    "初中生校车",
    "危化品运输"
  ],
  "附录3": [
    "重型普通半挂车",
    "重型厢式半挂车",
    "重型罐式半挂车",
    "重型平板半挂车",
    "重型集装箱半挂车",
    "重型自卸半挂车",
    "重型特殊结构半挂车",
    "重型仓栅式半挂车",
    "重型旅居半挂车",
    "重型专项作业半挂车",
    "重型低平板半挂车",
    "中型普通半挂车",
    "中型厢式半挂车",
    "中型罐式半挂车",
    "中型平板半挂车",
    "中型集装箱半挂车",
    "中型自卸半挂车",
    "中型特殊结构半挂车",
    "中型仓栅式半挂车",
    "中型旅居半挂车",
    "中型专项作业半挂车",
    "中型低平板半挂车",
    "轻型普通半挂车",
    "轻型厢式半挂车",
    "轻型罐式半挂车",
    "轻型平板半挂车",
    "轻型自卸半挂车",
    "轻型仓栅式半挂车",
    "轻型旅居半挂车",
    "轻型专项作业半挂车",
    "轻型低平板半挂车",
    "无轨电车",
    "有轨电车",
    "重型普通全挂车",
    "重型厢式全挂车",
    "重型罐式全挂车",
    "重型平板全挂车",
    "重型集装箱全挂车",
    "重型自卸全挂车",
    "重型仓栅式全挂车",
    "重型旅居全挂车",
    "重型专项作业全挂车",
    "中型普通全挂车",
    "中型厢式全挂车",
    "中型罐式全挂车",
    "中型平板全挂车",
    "中型集装箱全挂车",
    "中型自卸全挂车",
    "中型仓栅式全挂车",
    "中型旅居全挂车",
    "中型专项作业全挂车",
    "轻型普通全挂车",
    "轻型厢式全挂车",
    "轻型罐式全挂车",
    "轻型平板全挂车",
    "轻型自卸全挂车",
    "轻型仓栅式全挂车",
    "轻型旅居全挂车",
    "轻型专项作业全挂车",
    "重型普通货车",
    "重型厢式货车",
    "重型封闭货车",
    "重型罐式货车",
    "重型平板货车",
    "重型集装厢车",
    "重型自卸货车",
    "重型特殊结构货车",
    "重型仓栅式货车",
    "中型普通货车",
    "中型厢式货车",
    "中型封闭货车",
    "中型罐式货车",
    "中型平板货车",
    "中型集装厢车",
    "中型自卸货车",
    "中型特殊结构货车",
    "中型仓栅式货车",
    "轻型普通货车",
    "轻型厢式货车",
    "轻型封闭货车",
    "轻型罐式货车",
    "轻型平板货车",
    "轻型自卸货车",
    "轻型特殊结构货车",
    "轻型仓栅式货车",
    "微型普通货车",
    "微型厢式货车",
    "微型封闭货车",
    "微型罐式货车",
    "微型自卸货车",
    "微型特殊结构货车",
    "微型仓栅式货车",
    "普通低速货车",
    "厢式低速货车",
    "罐式低速货车",
    "自卸低速货车",
    "仓栅式低速货车",
    "轮式装载机械",
    "轮式挖掘机械",
    "轮式平地机械",
    "大型普通客车",
    "大型双层客车",
    "大型卧铺客车",
    "大型铰接客车",
    "大型越野客车",
    "大型轿车",
    "大型专用客车",
    "大型专用校车",
    "中型普通客车",
    "中型双层客车",
    "中型卧铺客车",
    "中型铰接客车",
    "中型越野客车",
    "中型轿车",
    "中型专用客车",
    "中型专用校车",
    "小型普通客车",
    "小型越野客车",
    "小型轿车",
    "小型专用客车",
    "小型专用校车",
    "小型面包车",
    "微型普通客车",
    "微型越野客车",
    "微型轿车",
    "普通正三轮摩托车",
    "轻便正三轮摩托车",
    "正三轮载客摩托车",
    "正三轮载货摩托车",
    "侧三轮摩托车",
    "普通二轮摩托车",
    "轻便二轮摩托车",
    "三轮汽车",
    "重型半挂牵引车",
    "重型全挂牵引车",
    "中型半挂牵引车",
    "中型全挂牵引车",
    "轻型半挂牵引车",
    "轻型全挂牵引车",
    "大型轮式拖拉机",
    "小型轮式拖拉机",
    "手扶拖拉机",
    "手扶变形运输机",
    "其它",
    "大型专项作业车",
    "中型专项作业车",
    "小型专项作业车",
    "微型专项作业车",
    "重型专项作业车",
    "轻型专项作业车",
    "货运专用车",
    "微型面包车"
  ],
  "附录4": [
    "正常",
    "转出",
    "被盗抢",
    "停驶",
    "注销",
    "违法未处理",
    "海关监管",
    "事故未处理",
    "嫌疑车",
    "查封",
    "暂扣",
    "强制注销",
    "事故逃逸",
    "锁定",
    "达到报废标准公告牌证作废",
    "逾期未检验"
  ],
  "附录5": {
    "01": "大型汽车",
    "02": "小型汽车",
    "03": "使馆汽车",
    "04": "领馆汽车",
    "05": "境外汽车",
    "06": "外籍汽车",
    "07": "普通摩托车",
    "08": "轻便摩托车",
    "09": "使馆摩托车",
    "10": "领馆摩托车",
    "11": "境外摩托车",
    "12": "外籍摩托车",
    "13": "低速车",
    "14": "拖拉机",
    "15": "挂车",
    "16": "教练汽车",
    "17": "教练摩托车",
    "20": "临时入境汽车",
    "21": "临时入境摩托车",
    "22": "临时行驶车",
    "23": "警用汽车",
    "24": "警用摩托",
    "51": "新能源大型车",
    "52": "新能源小型车"
  },
  "附录6": {
    "A": "汽油",
    "B": "柴油",
    "C": "电驱动",
    "D": "混合油",
    "E": "天然气",
    "F": "液化石油气",
    "L": "甲醇",
    "M": "乙醇",
    "N": "太阳能",
    "O": "混合动力",
    "Y": "无",
    "Z": "其他"
  }
}

var config = {
  "state": { name: "状态", source_type: "api" },
  "crossWeight": { name: "总质量", source_type: "api" },
  "color": { name: "颜色", source_type: "api" },
  "fuel": { name: "燃料种类", source_type: "transform", source_from: '附录6' },
  "wheelBase": { name: "轴距", source_type: "api" },
  "engineType": { name: "发动机型号", source_type: "api" },
  "plate": { name: "车牌号", source_type: "api" },
  "retirement": { name: "强制报废期止", source_type: "api" },
  "type": { name: "车牌型号", source_type: "api" },
  "variety": { name: "车辆类型", source_type: "transform", source_from: "附录5" },
  "engine": { name: "发动机号", source_type: "api" },
  "record": { name: "初次登记日期", source_type: "api" },
  "vin": { name: "车架号", source_type: "api" },
 
  "brand": { name: "汽车品牌", source_type: "api" },
  "vehicleType": { name: "车辆类型", source_type: "api" },
  "cc": { name: "排量", source_type: "api" },
  "loadWeight": { name: "核定载质量", source_type: "api" },
  "passengers": { name: "核定载客数", source_type: "api" },
  "rearTread": { name: "后轮距", source_type: "api" },
  "jianCheTime": { name: "年检日期", source_type: "api" },
  "frontTread": { name: "前轮距", source_type: "api" },
  "pps": { name: "出厂日期", source_type: "api" },
  "MaxJourney": { name: "最大功率（KW）", source_type: "api" },
  "curbWeight": { name: "整备质量", source_type: "api" },
  "validity": { name: "检验有效期止", source_type: "api" },
  "properties": { name: "使用性质", source_type: "api" },
  "shaft": { name: "轴数", source_type: "api" },
}

var apiTestData = {
  "crossWeight": "1882",
  "color": "灰",
  "fuel": "A",
  "wheelBase": "2675",
  "engineType": "LF",
  "plate": "粤***55",
  "retirement": "2099-12-31 00:00:00",
  "type": "CA7201AT",
  "variety": "02",
  "engine": "LF15****",
  "record": "2006-03-10 15:49:38",
  "vin": "LFPH4A*******7696",
  "state": "正常",
  "brand": "红旗牌",
  "vehicleType": "小型轿车",
  "cc": "1999",
  "loadWeight": "",
  "passengers": "5",
  "rearTread": "1540",
  "jianCheTime": "2019-03-31 00:00:00",
  "frontTread": "1540",
  "pps": "2006-02-18 00:00:00",
  "MaxJourney": "108",
  "curbWeight": "1427",
  "validity": "2019-03-31 00:00:00",
  "properties": "非营运",
  "shaft": "2"
}


function check_licensePlate(licensePlate) {

  var re = /^([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼]{1}(([A-HJ-Z]{1}[A-HJ-NP-Z0-9]{5})|([A-HJ-Z]{1}(([DF]{1}[A-HJ-NP-Z0-9]{1}[0-9]{4})|([0-9]{5}[DF]{1})))|([A-HJ-Z]{1}[A-D0-9]{1}[0-9]{3}警)))|([0-9]{6}使)|((([沪粤川云桂鄂陕蒙藏黑辽渝]{1}A)|鲁B|闽D|蒙E|蒙H)[0-9]{4}领)|(WJ[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼·•]{1}[0-9]{4}[TDSHBXJ0-9]{1})|([VKHBSLJNGCE]{1}[A-DJ-PR-TVY]{1}[0-9]{5})&/

  if (licensePlate.search(re) == -1) {
    return false;
  } else {
    return true;
  }
}

Page({

  /**
   * 页面的初始数据
   */
  data: {
    plate_number: '',
    items:[]
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  bindCartNo(e) {
    this.setData({
      plate_number: e.detail.value.toUpperCase()
    })
  },

  /**
   * 生命周期函数--监听页面卸载
   */
  search: function () {

    if (!check_licensePlate(this.data.plate_number)) {
      wx.showToast({
        title: '车牌号格式错误',
        icon: 'none'
      })
      return
    }
    wx.showLoading({
      title: '查询中',
    })
    let that = this
    app.http.post('/car_platform/public/index.php/api/queryCarInfo', {
      data: this.data.plate_number,
      baseUrl: 'https://www.cheapercheaper.top'
    })
      .then(res => {
        console.log(res)
        if (res.success) {
            that.setData({
              items:res.obj
            })
        }
        wx.showToast({
          title: res.msg,
          icon: 'none'
        })
      }).catch(res=>{
        console.log(res)
        wx.hideLoading()
      })


  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  getFormatData(apiData) {

    let output = []

    let tmpItem = {}
    let tmpData = {}
    for (let i in config) {
      if (apiData.hasOwnProperty(i) && config.hasOwnProperty(i)) {
        tmpItem = config[i]
        if (tmpItem.source_type === 'api') {
          output.push({ name: tmpItem.name, data: apiData[i] })
        } else {
          let source_from = config[i].source_from
          tmpData = transform[source_from][apiData[i]]
          output.push({ name: tmpItem.name, data: tmpData })
        }
      }
    }

    return output
  },
  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})